package com.ruoyi.fire.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
 * @PackageName: com.iot.fire.domain
 * @ClassName: DWaterMessage
 * @Description:
 * @Author: czl
 * @Date: 2025/11/10 23:10
 */
@Data
@TableName("d_water_message")
public class DWaterMessage {

    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;

    /**
     * 数据类型：Data_message为数据消息
     */
    @TableField(value = "DT")
    private String DT;

    /**
     * 版本V1.0
     */
    @TableField(value = "SV")
    private String SV;

    /**
     * 设备型号,暂定位多通道为GW1400,单通道低功耗独立设备为GW1100，对应8通道为GW1800,18为GW2800
     */
    @TableField(value = "EM")
    private String EM;

    /**
     * 设备SN，CPUID唯一性
     */
    @TableField(value = "SN")
    private String SN;

    /**
     * 为网关的时间，服务器接收可按服务器时间为准备
     */
    @TableField(value = "Time")
    private Date Time;

    /**
     * 包序列，最大65535，心跳和事件单独计数，每发一次自增1，包序列固定长度为5位。服务器接收到包序列，返回给设备
     */
    @TableField(value = "US")
    private String US;

    /**
     * 信号值
     */
    @TableField(value = "CSQ")
    private String CSQ;

    /**
     * 物联网卡号
     */
    @TableField(value = "IMEI")
    private String imei;

    /**
     * 电压
     */
    @TableField(value = "VBAT")
    private String VBAT;

    /**
     * 水设备信息
     */
    @TableField(exist = false)
    List<DWaterDeviceMessage> waterDeviceMessages;
}
